
package cn.edu.scau.cmi.hombio.service;

import cn.edu.scau.cmi.hombio.domain.Medicine;
import cn.edu.scau.cmi.hombio.domain.PreventionType;
import cn.edu.scau.cmi.hombio.domain.TaskPrevention;
import cn.edu.scau.cmi.hombio.domain.Unit;

import java.util.List;
import java.util.Set;

/**
 * Spring service that handles CRUD requests for PreventionType entities
 * 
 */
public interface PreventionTypeService {

	/**
	* Delete an existing PreventionType entity
	* 
	 */
	public void deletePreventionType(PreventionType preventiontype);

	/**
	* Return a count of all PreventionType entity
	* 
	 */
	public Integer countPreventionTypes();

	/**
	* Save an existing Medicine entity
	* 
	 */
	public PreventionType savePreventionTypeMedicineByMedicineId(Integer id, Medicine related_medicinebymedicineid);

	/**
	* Load an existing PreventionType entity
	* 
	 */
	public Set<PreventionType> loadPreventionTypes();

	/**
	* Delete an existing Medicine entity
	* 
	 */
	public PreventionType deletePreventionTypeMedicineByReportMedicineId(Integer preventiontype_id, Integer related_medicinebyreportmedicineid_id);

	/**
	 */
	public PreventionType findPreventionTypeByPrimaryKey(Integer id_1);

	/**
	* Delete an existing TaskPrevention entity
	* 
	 */
	public PreventionType deletePreventionTypeTaskPreventions(Integer preventiontype_id_1, Integer related_taskpreventions_id);

	/**
	* Save an existing PreventionType entity
	* 
	 */
	public void savePreventionType(PreventionType preventiontype_1);

	/**
	* Save an existing Medicine entity
	* 
	 */
	public PreventionType savePreventionTypeMedicineByReportMedicineId(Integer id_2, Medicine related_medicinebyreportmedicineid);

	/**
	* Delete an existing Medicine entity
	* 
	 */
	public PreventionType deletePreventionTypeMedicineByMedicineId(Integer preventiontype_id_2, Integer related_medicinebymedicineid_id);

	/**
	* Save an existing TaskPrevention entity
	* 
	 */
	public PreventionType savePreventionTypeTaskPreventions(Integer id_3, TaskPrevention related_taskpreventions);

	/**
	* Save an existing Unit entity
	* 
	 */
	public PreventionType savePreventionTypeUnitByReportUnitId(Integer id_4, Unit related_unitbyreportunitid);

	/**
	* Save an existing Unit entity
	* 
	 */
	public PreventionType savePreventionTypeUnitByUnitId(Integer id_5, Unit related_unitbyunitid);

	/**
	* Delete an existing Unit entity
	* 
	 */
	public PreventionType deletePreventionTypeUnitByUnitId(Integer preventiontype_id_3, Integer related_unitbyunitid_id);

	/**
	* Return all PreventionType entity
	* 
	 */
	public List<PreventionType> findAllPreventionTypes(Integer startResult, Integer maxRows);

	/**
	* Delete an existing Unit entity
	* 
	 */
	public PreventionType deletePreventionTypeUnitByReportUnitId(Integer preventiontype_id_4, Integer related_unitbyreportunitid_id);
}